LtU Forum, Site Discussion

Microsoft Phoenix Framework

Microsoft's Phoenix Framework, previously available only to registered researchers, is now publicly available for download. Phoenix is a Microsoft Research project focused on code optimization and analysis, with the stated goal of designing a framework to be used as the middle- and back-end components of all future Microsoft compilers.

Individual support and access to a community forum for Phoenix is available to qualified academic faculty and researchers.

Phoenix was previously mentioned on LtU.

Buried Treasure - No Fluff Just Stuff

Buried Treasure pdf

The trend toward dynamically typed languages is both widespread and strong. Less obvious, though, is a resurgence of interest in functional programming and functional languages. ... Haskell ... Objective CAML ... Scala ...

Is it double-think that allows the promotion of both dynamically typed languages and, by name, Haskell OCAML Scala without any acknowledgement that those powerful and efficient functional languages are ... statically type checked?

Ravenscar Profile?

The Ravenscar Profile for SPARK/ADA supposedly makes concurrency safe in that static tools can analyze the program. Might any LTU readers have real-world Ravenscar experience to share with us? It appears to be shared-state concurrency, which I think is considered less than ideal on LTU, but if it can be statically checked perhaps that ameliorates some of the evil?

BlackBox Component Builder has been open sourced

BlackBox is a RAD IDE for the Component Pascal language (not really Pascal, it is a superset of Oberon).
Personally, I don´t like much the language, but the framework and
environment are really interesting. It is very light and as integrated as Smalltalk. It is also nice for literate programming.
The sources are included in the installer.

Stealing language features for fun and profit in Ruby

Hi all, I haven't used Ruby much yet, but I was happy to see this entertaining article about how to enable some language features common in Haskell, ML, Lisp and others (Pattern-matching, S-expressions).

If It's not Nailed Down, Steal it

Linspire chooses Haskell as preferred language

This is a couple of weeks old, but significant enough that I think many on LtU will be interested. From the Debian Haskell mailing list:
The OS team at Linspire, Inc. would like to announce that we are standardizing on Haskell as our preferred language for core OS development.

We are redoing a bunch of our infrastructure using Haskell as our common standard language. Our first task is redoing our Debian package builder (aka autobuilder) in Haskell.  Other tools such as ISO builders, package dependency checkers are in progress. The goal is to make a really tight simple set of tools that will let developers contribute to Freespire, based on Debian tools whenever possible. Our hardware detector, currently in OCaml, is on the block to be rewritten as well.

There are four of us using Haskell, all CCed on this message.  All of us have been using functional languages for quite some time.  At Linspire, our choices have been OCaml and Haskell. David Fox wrote the hardware detector in OCaml and is now porting it to Haskell.  Jeremy Shaw has been doing various utilities in Haskell for several years.  Sean Meiners recently wrote an application for managing his recipe collection and is now hooked.  I am porting our CD build procedure from OCaml to Haskell.

We are interested in many other uses of Haskell.  The recent discussion about Haskell as a shell interests greatly, for example, as we have all suffered through years of bash code.  We'd also like to make some Haskell bindings for Qt and KDE, though at the moment we don't have a good plan to tackle that problem efficiently.

To date, Linspire (formerly Lindows) has focused on polishing Linux for the consumer market.  I mentioned Freespire, above.  We announced Freespire recently (www.freespire.org).  Essentially it is a more open, developer friendly version of Linspire.  http://freespire.org/about/vision and http://freespire.org/support/faqs have good overviews.  Access through apt, open-source CNR client and many other good things.

I mention Freespire because some of our colleagues were concerned that using Haskell would isolate us from the larger community of developers and make it hard to find new employees skilled in Haskell, should we need to.  From our perspective, functional programming makes us more effective and we think that getting even a few people who know Haskell hacking with us is a better combination than lots of Perl and bash.  I'm not sure I expect anyone on this list to disagree, but still I'd love to hear your thoughts on the subject.

Also, Linspire is based on Debian. We've talked a little with John Goerzen who announced his missingH library here a while back.  We've imported it and expect to pass updates back to him as well as any other libraries and tools that he would be interested in includng in the Debian archive.  Also, it seems there are quite a few other libraries out there which are either not debianized or stale, but perhaps that is because I haven't fully caught up with what people on this list have done.  If there isn't a cron job running somewhere that updates an archive with Cabalized libraries and apps, we would like to help set one up.

I will be at Debconf from Sunday, May 14 through Tuesday evening.  If anyone on this list is there, I would love to chat and see how we can help each other.

Clifford Beshers <clifford.beshers at linspire.com>
OS Team Lead
Linspire, Inc.

"New story" template

How easy it is (and whether it makes sence) to pre-fill the body of the newly created story with a template mentioned by Ehud?
That will make it easier to present stories in the same format.
I mean the text of the template can literally contain recommendations - like, describe the main point here, quote here, but no more than 200 words, provide links here, list authors here, etc. and HTML formatting, too.

Backwards debugging

I just came accross UndoDB, which allows stepping backwards through a program. It reminds me of the Objective Caml debugger.

Outside of these more complex tools, I find it easy to look back in program execution when I use recursion rather than mutation and a stack trace is available.

What other languages or language tools allow looking backwards in program execution?

Segmentation Fault

During a 1 user Solaris test the CMS(Central Management Server) crashed. The core file was generated at 2AM, so you check the machine on which the database was running. You find an event logs that says "MS SQL Server: unknown error" and it was generated at around 2AM. You then extract the thread stacks from the core file, and you see that a thread had a segmentation fault (SIGSEGV). At the top of the stack you see that the thread was executing some Database Subsystem code of ours.

Question: What do you think is the most likely cause of the segmentation fault and why?

Editing posts

I don't think you should be allowed to edit your own post, with the possible exception that you can append to it, for example to correct a link.

I've seen two examples now in the past week where people have edited posts to substantially change what they say, instead of fixing minor typos. This really isn't good from a discussion point of view.

I don't agree with all Slashdot decisions, but I do with this one. Here's what they say about the issue in their FAQ:


Will you delete my comment?

No. We believe that discussions in Slashdot are like discussions in real life- you can't change what you say, you only can attempt to clarify by saying more. In other words, you can't delete a comment that you've posted, you only can post a reply to yourself and attempt to clarify what you've said.

In short, you should think twice before you click that 'Submit' button because once you click it, we aren't going to let you Undo it.

XML feed